package com.heima.crm.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.heima.crm.common.result.PageResult;
import com.heima.crm.common.result.Result;

import com.heima.crm.pojos.dtos.DeptDTO;
import com.heima.crm.pojos.entity.SysDept;

import java.util.List;

public interface DeptService extends IService<SysDept> {
    /**
     * 动态模糊分页查询部门管理
     * @param deptDTO
     * @return
     */
    PageResult deptPageList(DeptDTO deptDTO);

    //List<SysDept> listWithTree();

    /**
     * 添加部门
     * @param sysDept
     * @return
     */
    Result addDept(SysDept sysDept);

    /**
     * 修改部门
     * @param sysDept
     * @return
     */
    Result updateDept(SysDept sysDept);

    /**
     * 删除部门
     * @param id
     */
    Result delDept(Long id);

    /**
     * 查询所有的部门
     * @return
     */
    Result findDept();

    /**
     * 根据部门id查询所有的用户
     * @param deptId
     * @return
     */
    Result findUser(Long deptId);


    /**
     * 部门启停
     * @param status
     * @param id
     * @return
     */
    Result startOrStop(Integer status, Long id);

    /**
     * 部门修改数据回显
     * @param id
     * @return
     */
    SysDept selectById(Long id);
}
